﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Configuration;

namespace ivv.lancamento
{
    public partial class residencial : System.Web.UI.Page
    {
        public bool editar = false;

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                SqlConnection sqlc = new SqlConnection(ConfigurationManager.AppSettings["baseDados"]);
                sqlc.Open();

                // carregar locais de origem para o ComBox
                string sqla = "SELECT DISTINCT  razaoSocialIncorporadora, incorporadora.codigoIncorporadora FROM empreendimento, incorporadora where tipoTransporte = 1 ";
                sqla += "AND empreendimento.codigoIncorporadora = incorporadora.codigoIncorporadora ORDER BY razaoSocialIncorporadora";

                SqlCommand cmd = new SqlCommand(sqla, sqlc);
                SqlDataReader dr = cmd.ExecuteReader();

                ListItem incorporadora = new ListItem();
                incorporadora.Value = "0";
                incorporadora.Text = "Selecione uma incorporadora";

                lstIncorporadora.Items.Add(incorporadora);

                while (dr.Read())
                {
                    ListItem Incorporadora = new ListItem();
                    Incorporadora.Value = dr["codigoIncorporadora"].ToString();
                    Incorporadora.Text = dr["razaoSocialIncorporadora"].ToString();
                    lstIncorporadora.Items.Add(Incorporadora);
                }
                // fim do carregamento
                dr.Close();
                cmd.Dispose();

                string selectEstagioObra = "SELECT * FROM estagioObra ORDER BY descricaoEstagioObra";

                cmd = new SqlCommand(selectEstagioObra, sqlc);
                dr = cmd.ExecuteReader();

                ListItem estagioObra = new ListItem();
                estagioObra.Value = "0";
                estagioObra.Text = "Selecione um estágio da obra";

                lstEstagioObra.Items.Add(estagioObra);

                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        ListItem estagioObras = new ListItem();
                        estagioObras.Value = dr["codigoEstagioObra"].ToString();
                        estagioObras.Text = dr["descricaoEstagioObra"].ToString();

                        lstEstagioObra.Items.Add(estagioObras);
                    }
                }

                dr.Close();


                string selectAno = "select distinct anoIvv FROM ivv order by anoIvv desc";

                cmd = new SqlCommand(selectAno, sqlc);
                dr = cmd.ExecuteReader();

                ListItem comeco = new ListItem();

                comeco.Text = "Selecione um ano";
                comeco.Value = "nulo";

                lstAno.Items.Add(comeco);

                int cont = 0;

                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        ListItem dados = new ListItem();

                        dados.Text = dr["anoIvv"].ToString();
                        dados.Value = cont.ToString();

                        if (dr["anoIvv"].ToString() == DateTime.Now.Year.ToString())
                        {
                            dados.Selected = true;
                        }

                        lstAno.Items.Add(dados);

                        cont++;
                    }
                }

                dr.Close();

                sqlc.Close();

                comeco = new ListItem();

                comeco.Text = "Selecione um mês";
                comeco.Value = "nulo";

                lstMes.Items.Add(comeco);

                for (int i = 1; i < 13; i++)
                {
                    ListItem dados = new ListItem();

                    dados.Text = pegarMes(i);
                    dados.Value = i.ToString();

                    lstMes.Items.Add(dados);
                }

                lstMes.SelectedValue = DateTime.Now.Month.ToString();

                lstAno.Focus();
            }
        }

        public string pegarMes(int mes)
        {
            string textoMes = "";

            switch (mes)
            {
                case 1: textoMes = "Janeiro";
                    break;
                case 2: textoMes = "Fevereiro";
                    break;
                case 3: textoMes = "Março";
                    break;
                case 4: textoMes = "Abril";
                    break;
                case 5: textoMes = "Maio";
                    break;
                case 6: textoMes = "Junho";
                    break;
                case 7: textoMes = "Julho";
                    break;
                case 8: textoMes = "Agosto";
                    break;
                case 9: textoMes = "Setembro";
                    break;
                case 10: textoMes = "Outubro";
                    break;
                case 11: textoMes = "Novembro";
                    break;
                default: textoMes = "Dezembro";
                    break;
            }
            return textoMes;
        }

        protected void lstIncorporadora_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (lstIncorporadora.SelectedValue == "0")
            {
                lblEmpreendimento.Visible = false;
                lstEmpreendimento.Visible = false;
                lstEmpreendimento.Items.Clear();
                Panel1.Visible = false;
            }
            else
            {
                lblEmpreendimento.Visible = true;
                lstEmpreendimento.Visible = true;
                lstEmpreendimento.Items.Clear();

                SqlConnection sqlc = new SqlConnection(ConfigurationManager.AppSettings["baseDados"]);
                sqlc.Open();

                // carregar locais de origem para o ComBox
                string sqla = "select empreendimento.*, (select descricaoBairro from bairro where bairro.codigoBairro = empreendimento.codigoBairro) as bairro from empreendimento where tipoTransporte = 1 and codigoIncorporadora = " + lstIncorporadora.SelectedValue + " order by (select descricaoBairro from bairro where bairro.codigoBairro = empreendimento.codigoBairro), nomeEmpreendimento, areaPrivada";

                SqlCommand cmda = new SqlCommand(sqla, sqlc);
                SqlDataReader dr = cmda.ExecuteReader();

                ListItem incorporadora = new ListItem();
                incorporadora.Value = "0";
                incorporadora.Text = "Selecione um empreendimento";

                lstEmpreendimento.Items.Add(incorporadora);

                while (dr.Read())
                {
                    ListItem Empreendimento = new ListItem();
                    Empreendimento.Value = dr["codigoEmpreendimento"].ToString();
                    Empreendimento.Text = "Nome: " + dr["nomeEmpreendimento"].ToString() + " / Bairro: " + dr["bairro"].ToString() + " / M²: " + dr["areaPrivada"].ToString();
                    lstEmpreendimento.Items.Add(Empreendimento);
                }
                // fim do carregamento
                dr.Close();

                sqlc.Close();
            }
        }

        protected void lstEmpreendimento_SelectedIndexChanged(object sender, EventArgs e)
        {
            listar();
        }

        void listar()
        {
            if (lstEmpreendimento.SelectedValue == "0")
            {
                Panel1.Visible = false;
            }
            else
            {
                string meses = lstMes.SelectedValue;
                if (meses.Length == 1)
                {
                    meses = "0" + meses;
                }
                SqlConnection sqlc = new SqlConnection(ConfigurationManager.AppSettings["baseDados"]);
                sqlc.Open();

                // carregar locais de origem para o ComBox
                string sqla = "select empreendimento.*, (select descricaoBairro from bairro where bairro.codigoBairro = empreendimento.codigoBairro) as bairro from empreendimento where codigoEmpreendimento = " + lstEmpreendimento.SelectedValue;

                sqla = "SELECT empreendimento.*, ";

                sqla += "(SELECT descricaoBairro from bairro where bairro.codigoBairro = empreendimento.codigoBairro) as bairro, ";

                sqla += "(SELECT distinct codigoEstagioObra FROM ivv where ivv.codigoEmpreendimento = empreendimento.codigoEmpreendimento and ivv.mesIvv = '" + meses + "' and ivv.anoIvv = '" + lstAno.SelectedItem.Text + "') as estagioObra, ";

                sqla += "(SELECT descricaoOrigemRecurso FROM origemRecurso where origemRecurso.codigoOrigemRecurso = empreendimento.codigoOrigemRecurso) as origemRecurso, ";

                //sqla += "(SELECT quantidadeOfertasIvv FROM ivv where ivv.quantidadeOfertasIvv is not null and ivv.codigoEmpreendimento = empreendimento.codigoEmpreendimento and ivv.mesIvv = '" + meses + "' and ivv.anoIvv = '" + lstAno.SelectedItem.Text + "') as oferta, ";

                sqla += "(SELECT quantidadeLancamentoIvv FROM ivv where ivv.quantidadeLancamentoIvv is not null and  ivv.codigoEmpreendimento = empreendimento.codigoEmpreendimento and ivv.mesIvv = '" + meses + "' and ivv.anoIvv = '" + lstAno.SelectedItem.Text + "') as Lancamento, ";

                sqla += "(SELECT quantidadeVendaIvv FROM ivv where ivv.quantidadeVendaIvv is not null and  ivv.codigoEmpreendimento = empreendimento.codigoEmpreendimento and ivv.mesIvv = '" + meses + "' and ivv.anoIvv = '" + lstAno.SelectedItem.Text + "') as Venda, ";

                sqla += "(SELECT quantidadeLancamentoVendaIvv FROM ivv where ivv.quantidadeLancamentoVendaIvv is not null and  ivv.codigoEmpreendimento = empreendimento.codigoEmpreendimento and ivv.mesIvv = '" + meses + "' and ivv.anoIvv = '" + lstAno.SelectedItem.Text + "') as LancamentoVenda, ";

                sqla += "(SELECT quantidadeDevolucaoIvv FROM ivv where ivv.quantidadeDevolucaoIvv is not null and ivv.codigoEmpreendimento = empreendimento.codigoEmpreendimento and ivv.mesIvv = '" + meses + "' and ivv.anoIvv = '" + lstAno.SelectedItem.Text + "') as devolucao, ";

                sqla += "(SELECT top 1 valormediometroquadrado FROM ivv where ivv.valormediometroquadrado is not null and ivv.codigoEmpreendimento = empreendimento.codigoEmpreendimento and ivv.mesIvv = '" + meses + "' and ivv.anoIvv = '" + lstAno.SelectedItem.Text + "') as valormediometroquadrado ";

                sqla += "from empreendimento where codigoEmpreendimento = " + lstEmpreendimento.SelectedValue;

                SqlCommand cmda = new SqlCommand(sqla, sqlc);
                SqlDataReader dr = cmda.ExecuteReader();

                while (dr.Read())
                {
                    lblArea.Text = dr["areaPrivada"].ToString();
                    lblNome.Text = dr["nomeEmpreendimento"].ToString();
                    lblElevador.Text = dr["numeroElevadores"].ToString();
                    lblGaragem.Text = dr["numeroGaragens"].ToString();
                    lblQuarto.Text = dr["numeroQuartos"].ToString();
                    lblTempoFinanciamento.Text = dr["tempoFinanciamento"].ToString();
                    lblBairro.Text = dr["bairro"].ToString();
                    lblOrigemRecurso.Text = dr["origemRecurso"].ToString();

                    lblQuantidadeOferta.Text = dr["quantidadeOfertaImovel"].ToString();
                    txtQuantidadeLancado.Text = dr["Lancamento"].ToString();
                    txtQuantidadeVenda.Text = dr["Venda"].ToString();
                    txtQuantidadeVendaLancado.Text = dr["LancamentoVenda"].ToString();
                    txtQuantidadeDevolucao.Text = dr["devolucao"].ToString();
                    txtValorMedio.Text = dr["valormediometroquadrado"].ToString();

                    if (dr["estagioObra"].ToString() != "")
                    {
                        lstEstagioObra.SelectedValue = dr["estagioObra"].ToString();

                        editar = true;
                    }
                    else
                    {
                        lstEstagioObra.SelectedValue = "0";
                    }
                }
                // fim do carregamento
                dr.Close();

                sqlc.Close();

                Panel1.Visible = true;
            }
        }

        protected void btnSalvar_Click(object sender, EventArgs e)
        {
            if (lstEstagioObra.SelectedValue != "0")
            {
                string meses = lstMes.SelectedValue;
                if (meses.Length == 1)
                {
                    meses = "0" + meses;
                }
                SqlConnection sqlc = new SqlConnection(ConfigurationManager.AppSettings["baseDados"]);
                sqlc.Open();

                string sqla = "select empreendimento.*, (select descricaoBairro from bairro where bairro.codigoBairro = empreendimento.codigoBairro) as bairro from empreendimento where codigoEmpreendimento = " + lstEmpreendimento.SelectedValue;

                sqla = "SELECT empreendimento.*, ";

                sqla += "(SELECT descricaoBairro from bairro where bairro.codigoBairro = empreendimento.codigoBairro) as bairro, ";

                sqla += "(SELECT distinct codigoEstagioObra FROM ivv where ivv.codigoEmpreendimento = empreendimento.codigoEmpreendimento and ivv.mesIvv = '" + meses + "' and ivv.anoIvv = '" + lstAno.SelectedItem.Text + "') as estagioObra, ";

                sqla += "(SELECT quantidadeOfertasIvv FROM ivv where ivv.quantidadeOfertasIvv is not null and ivv.codigoEmpreendimento = empreendimento.codigoEmpreendimento and ivv.mesIvv = '" + meses + "' and ivv.anoIvv = '" + lstAno.SelectedItem.Text + "') as oferta, ";

                sqla += "(SELECT quantidadeLancamentoIvv FROM ivv where ivv.quantidadeLancamentoIvv is not null and  ivv.codigoEmpreendimento = empreendimento.codigoEmpreendimento and ivv.mesIvv = '" + meses + "' and ivv.anoIvv = '" + lstAno.SelectedItem.Text + "') as Lancamento, ";

                sqla += "(SELECT quantidadeVendaIvv FROM ivv where ivv.quantidadeVendaIvv is not null and  ivv.codigoEmpreendimento = empreendimento.codigoEmpreendimento and ivv.mesIvv = '" + meses + "' and ivv.anoIvv = '" + lstAno.SelectedItem.Text + "') as Venda, ";

                sqla += "(SELECT quantidadeLancamentoVendaIvv FROM ivv where ivv.quantidadeLancamentoVendaIvv is not null and  ivv.codigoEmpreendimento = empreendimento.codigoEmpreendimento and ivv.mesIvv = '" + meses + "' and ivv.anoIvv = '" + lstAno.SelectedItem.Text + "') as LancamentoVenda, ";

                sqla += "(SELECT quantidadeDevolucaoIvv FROM ivv where ivv.quantidadeDevolucaoIvv is not null and ivv.codigoEmpreendimento = empreendimento.codigoEmpreendimento and ivv.mesIvv = '" + meses + "' and ivv.anoIvv = '" + lstAno.SelectedItem.Text + "') as devolucao, ";

                sqla += "(SELECT top 1 valormediometroquadrado FROM ivv where ivv.valormediometroquadrado is not null and ivv.codigoEmpreendimento = empreendimento.codigoEmpreendimento and ivv.mesIvv = '" + meses + "' and ivv.anoIvv = '" + lstAno.SelectedItem.Text + "') as valormediometroquadrado ";

                sqla += "from empreendimento where codigoEmpreendimento = " + lstEmpreendimento.SelectedValue;

                SqlCommand cmda = new SqlCommand(sqla, sqlc);
                SqlDataReader dr = cmda.ExecuteReader();

                bool devolucaoV = true;
                bool lancamentoV = true;
                bool vendaLancadoV = true;
                bool vendaV = true;

                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        if (dr["estagioObra"].ToString() != "")
                        {
                            editar = true;
                        }

                        if (lblQuantidadeOferta.Text != null && lblQuantidadeOferta.Text != dr["oferta"].ToString())
                        {
                            oferta();
                        }
                        if (txtQuantidadeLancado.Text != null && txtQuantidadeLancado.Text != dr["Lancamento"].ToString())
                        {
                            lancado();
                            lancamentoV = false;
                        }
                        if (txtQuantidadeVenda.Text != null && txtQuantidadeVenda.Text != dr["Venda"].ToString())
                        {
                            venda();
                            vendaV = false;
                        }
                        if (txtQuantidadeVendaLancado.Text != null && txtQuantidadeVendaLancado.Text != dr["LancamentoVenda"].ToString())
                        {
                            vendaLancado();
                            vendaLancadoV = false;
                        }
                        if (txtQuantidadeDevolucao.Text != null && txtQuantidadeDevolucao.Text != dr["devolucao"].ToString())
                        {
                            devolucao();
                            devolucaoV = false;
                        }

                        if (dr["estagioObra"].ToString() != "")
                        {
                            ivv(dr["quantidadeOfertaImovel"].ToString(), devolucaoV, lancamentoV, vendaLancadoV, vendaV);
                        }
                    }
                }
                dr.Close();

                sqlc.Close();

                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirect", "alert('Registros salvos com sucesso.');", true);

                listar();
            }
            else
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirect", "alert('Selecione o estagio da obra.');", true);
            }
        }

        void ivv(string quantidadeOfertaImovel, bool devolucaoV, bool lancamentoV, bool vendaLancadoV, bool vendaV)
        {
            bool validar = true;

            double devolucao = 0;
            double venda = 0;
            double vendaLancado = 0;
            double lancamento = 0;

            //Cinco dados base para cálcular a quantidade de ofertas
            if (!devolucaoV)
            {
                devolucao = Convert.ToDouble(txtQuantidadeDevolucao.Text);
            }

            if (!vendaV)
            {
                venda = Convert.ToDouble(txtQuantidadeVenda.Text);
            }

            if (!vendaLancadoV)
            {
                vendaLancado = Convert.ToDouble(txtQuantidadeVendaLancado.Text);
            }

            if (!lancamentoV)
            {
                lancamento = Convert.ToDouble(txtQuantidadeLancado.Text);
            }

            double oferta = Convert.ToDouble(quantidadeOfertaImovel);

            if (vendaLancado > lancamento)
            {
                validar = false;
            }

            if (venda > oferta + lancamento)
            {
                validar = false;
            }

            if (validar)
            {
                double sobraLancamento = lancamento - vendaLancado;
                double sobraOferta = oferta - venda;

                double ofertaFinal = sobraLancamento + sobraOferta + devolucao;

                SqlConnection sqlc = new SqlConnection(ConfigurationManager.AppSettings["baseDados"]);
                sqlc.Open();

                string update = "UPDATE empreendimento SET quantidadeOfertaImovel = '" + ofertaFinal + "' WHERE codigoEmpreendimento = " + lstEmpreendimento.SelectedValue;

                SqlCommand cmd = new SqlCommand(update, sqlc);
                cmd.ExecuteNonQuery();

                sqlc.Close();
            }
            else
            {
                string alert = "alert('A quantidade de vendas lançados deve ser menor ou igual ao lançamento, ";
                alert = "e a quantidade de venda deve ser menor ou igual a quantidade de ofertas.');";

                ScriptManager.RegisterStartupScript(this, this.GetType(), "redirect", alert, true);
            }
        }

        void oferta()
        {
            string meses = lstMes.SelectedValue;
            if (meses.Length == 1)
            {
                meses = "0" + meses;
            }
            SqlConnection sqlc = new SqlConnection(ConfigurationManager.AppSettings["baseDados"]);
            sqlc.Open();

            if (editar)
            {
                string update = "UPDATE ivv SET dataCadastroIvv = '" + DateTime.Now.ToString("dd/MM/yyyy") + "' ";
                update += ",quantidadeOfertasIvv = '" + lblQuantidadeOferta.Text + "' ";
                update += ",codigoEstagioObra = " + lstEstagioObra.SelectedValue + " ";
                update += ",valorMedioMetroQuadrado = '" + txtValorMedio.Text + "' ";
                update += "WHERE anoIvv = '" + lstAno.SelectedItem.Text + "' and mesIvv = '" + meses + "' ";
                update += "and codigoEmpreendimento = " + lstEmpreendimento.SelectedValue + " and quantidadeOfertasIvv is not null ";

                SqlCommand cmd = new SqlCommand(update, sqlc);
                cmd.ExecuteNonQuery();
            }
            else
            {
                string insert = "INSERT INTO ivv ";

                insert += "(anoIvv, mesIvv, codigoIncorporadora, codigoEmpreendimento ";
                insert += ", dataCadastroIvv, quantidadeOfertasIvv, tipoTransporte ";
                insert += ", codigoEstagioObra, codigoSituacaoImovel, valorMedioMetroQuadrado) ";

                insert += "VALUES ";

                insert += "('" + lstAno.SelectedItem.Text + "', '" + meses + "', " + lstIncorporadora.SelectedValue + ", " + lstEmpreendimento.SelectedValue + " ";
                insert += ", '" + DateTime.Now.ToString("dd/MM/yyyy") + "', '" + lblQuantidadeOferta.Text + "' ";
                insert += ", 1, " + lstEstagioObra.SelectedValue + ", 1, '" + txtValorMedio.Text + "') ";

                SqlCommand cmd = new SqlCommand(insert, sqlc);
                cmd.ExecuteNonQuery();
            }

            sqlc.Close();

            //ScriptManager.RegisterStartupScript(this, this.GetType(), "redirect", "finalizar('Total de ofertas cadastrado com sucesso.'); window.location='" + Request.ApplicationPath + "residencial.aspx';", true);
        }

        void lancado()
        {
            string meses = lstMes.SelectedValue;
            if (meses.Length == 1)
            {
                meses = "0" + meses;
            }
            SqlConnection sqlc = new SqlConnection(ConfigurationManager.AppSettings["baseDados"]);
            sqlc.Open();

            if (editar)
            {
                string update = "UPDATE ivv SET dataCadastroIvv = '" + DateTime.Now.ToString("dd/MM/yyyy") + "' ";
                update += ",quantidadeLancamentoIvv = '" + txtQuantidadeLancado.Text + "' ";
                update += ",codigoEstagioObra = " + lstEstagioObra.SelectedValue + " ";
                update += ",valorMedioMetroQuadrado = '" + txtValorMedio.Text + "' ";
                update += "WHERE anoIvv = '" + lstAno.SelectedItem.Text + "' and mesIvv = '" + meses + "' ";
                update += "and codigoEmpreendimento = " + lstEmpreendimento.SelectedValue + " and quantidadeLancamentoIvv is not null ";

                SqlCommand cmd = new SqlCommand(update, sqlc);
                cmd.ExecuteNonQuery();
            }
            else
            {
                string insert = "INSERT INTO ivv ";

                insert += "(anoIvv, mesIvv, codigoIncorporadora, codigoEmpreendimento ";
                insert += ", dataCadastroIvv, quantidadeLancamentoIvv, tipoTransporte ";
                insert += ", codigoEstagioObra, codigoSituacaoImovel, valorMedioMetroQuadrado) ";

                insert += "VALUES ";

                insert += "('" + lstAno.SelectedItem.Text + "', '" + meses + "', " + lstIncorporadora.SelectedValue + ", " + lstEmpreendimento.SelectedValue + " ";
                insert += ", '" + DateTime.Now.ToString("dd/MM/yyyy") + "', '" + txtQuantidadeLancado.Text + "' ";
                insert += ", 1, " + lstEstagioObra.SelectedValue + ", 2, '" + txtValorMedio.Text + "') ";

                SqlCommand cmd = new SqlCommand(insert, sqlc);
                cmd.ExecuteNonQuery();
            }

            sqlc.Close();

            //ScriptManager.RegisterStartupScript(this, this.GetType(), "redirect", "finalizar('Lançados cadastrado com sucesso.'); window.location='" + Request.ApplicationPath + "residencial.aspx';", true);
        }

        void venda()
        {
            string meses = lstMes.SelectedValue;
            if (meses.Length == 1)
            {
                meses = "0" + meses;
            }
            SqlConnection sqlc = new SqlConnection(ConfigurationManager.AppSettings["baseDados"]);
            sqlc.Open();

            if (editar)
            {
                string update = "UPDATE ivv SET dataCadastroIvv = '" + DateTime.Now.ToString("dd/MM/yyyy") + "' ";
                update += ",quantidadeVendaIvv = '" + txtQuantidadeVenda.Text + "' ";
                update += ",codigoEstagioObra = " + lstEstagioObra.SelectedValue + " ";
                update += ",valorMedioMetroQuadrado = '" + txtValorMedio.Text + "' ";
                update += "WHERE anoIvv = '" + lstAno.SelectedItem.Text + "' and mesIvv = '" + meses + "' ";
                update += "and codigoEmpreendimento = " + lstEmpreendimento.SelectedValue + " and quantidadeVendaIvv is not null ";

                SqlCommand cmd = new SqlCommand(update, sqlc);
                cmd.ExecuteNonQuery();
            }
            else
            {
                string insert = "INSERT INTO ivv ";

                insert += "(anoIvv, mesIvv, codigoIncorporadora, codigoEmpreendimento ";
                insert += ", dataCadastroIvv, quantidadeVendaIvv, tipoTransporte ";
                insert += ", codigoEstagioObra, codigoSituacaoImovel, valorMedioMetroQuadrado) ";

                insert += "VALUES ";

                insert += "('" + lstAno.SelectedItem.Text + "', '" + meses + "', " + lstIncorporadora.SelectedValue + ", " + lstEmpreendimento.SelectedValue + " ";
                insert += ", '" + DateTime.Now.ToString("dd/MM/yyyy") + "', '" + txtQuantidadeVenda.Text + "' ";
                insert += ", 1, " + lstEstagioObra.SelectedValue + ", 3, '" + txtValorMedio.Text + "') ";

                SqlCommand cmd = new SqlCommand(insert, sqlc);
                cmd.ExecuteNonQuery();
            }

            sqlc.Close();

            //ScriptManager.RegisterStartupScript(this, this.GetType(), "redirect", "finalizar('Total das vendas cadastrado com sucesso.'); window.location='" + Request.ApplicationPath + "residencial.aspx';", true);
        }

        void vendaLancado()
        {
            string meses = lstMes.SelectedValue;
            if (meses.Length == 1)
            {
                meses = "0" + meses;
            }
            SqlConnection sqlc = new SqlConnection(ConfigurationManager.AppSettings["baseDados"]);
            sqlc.Open();

            if (editar)
            {
                string update = "UPDATE ivv SET dataCadastroIvv = '" + DateTime.Now.ToString("dd/MM/yyyy") + "' ";
                update += ",quantidadeLancamentoVendaIvv = '" + txtQuantidadeVendaLancado.Text + "' ";
                update += ",codigoEstagioObra = " + lstEstagioObra.SelectedValue + " ";
                update += ",valorMedioMetroQuadrado = '" + txtValorMedio.Text + "' ";
                update += "WHERE anoIvv = '" + lstAno.SelectedItem.Text + "' and mesIvv = '" + meses + "' ";
                update += "and codigoEmpreendimento = " + lstEmpreendimento.SelectedValue + " and quantidadeLancamentoVendaIvv is not null ";

                SqlCommand cmd = new SqlCommand(update, sqlc);
                cmd.ExecuteNonQuery();
            }
            else
            {
                string insert = "INSERT INTO ivv ";

                insert += "(anoIvv, mesIvv, codigoIncorporadora, codigoEmpreendimento ";
                insert += ", dataCadastroIvv, quantidadeLancamentoVendaIvv, tipoTransporte ";
                insert += ", codigoEstagioObra, codigoSituacaoImovel, valorMedioMetroQuadrado) ";

                insert += "VALUES ";

                insert += "('" + lstAno.SelectedItem.Text + "', '" + meses + "', " + lstIncorporadora.SelectedValue + ", " + lstEmpreendimento.SelectedValue + " ";
                insert += ", '" + DateTime.Now.ToString("dd/MM/yyyy") + "', '" + txtQuantidadeVendaLancado.Text + "' ";
                insert += ", 1, " + lstEstagioObra.SelectedValue + ", 4, '" + txtValorMedio.Text + "') ";

                SqlCommand cmd = new SqlCommand(insert, sqlc);
                cmd.ExecuteNonQuery();
            }

            sqlc.Close();

            //ScriptManager.RegisterStartupScript(this, this.GetType(), "redirect", "finalizar('Total de venda lançados cadastrado com sucesso.'); window.location='" + Request.ApplicationPath + "residencial.aspx';", true);
        }

        void devolucao()
        {
            string meses = lstMes.SelectedValue;
            if (meses.Length == 1)
            {
                meses = "0" + meses;
            }
            SqlConnection sqlc = new SqlConnection(ConfigurationManager.AppSettings["baseDados"]);
            sqlc.Open();

            if (editar)
            {
                string update = "UPDATE ivv SET dataCadastroIvv = '" + DateTime.Now.ToString("dd/MM/yyyy") + "' ";
                update += ",quantidadeDevolucaoIvv = '" + txtQuantidadeDevolucao.Text + "' ";
                update += ",codigoEstagioObra = " + lstEstagioObra.SelectedValue + " ";
                update += ",valorMedioMetroQuadrado = '" + txtValorMedio.Text + "' ";
                update += "WHERE anoIvv = '" + lstAno.SelectedItem.Text + "' and mesIvv = '" + meses + "' ";
                update += "and codigoEmpreendimento = " + lstEmpreendimento.SelectedValue + " and quantidadeDevolucaoIvv is not null ";

                SqlCommand cmd = new SqlCommand(update, sqlc);
                cmd.ExecuteNonQuery();
            }
            else
            {
                string insert = "INSERT INTO ivv ";

                insert += "(anoIvv, mesIvv, codigoIncorporadora, codigoEmpreendimento ";
                insert += ", dataCadastroIvv, quantidadeDevolucaoIvv, tipoTransporte ";
                insert += ", codigoEstagioObra, codigoSituacaoImovel, valorMedioMetroQuadrado) ";

                insert += "VALUES ";

                insert += "('" + lstAno.SelectedItem.Text + "', '" + meses + "', " + lstIncorporadora.SelectedValue + ", " + lstEmpreendimento.SelectedValue + " ";
                insert += ", '" + DateTime.Now.ToString("dd/MM/yyyy") + "', '" + txtQuantidadeDevolucao.Text + "' ";
                insert += ", 1, " + lstEstagioObra.SelectedValue + ", 5, '" + txtValorMedio.Text + "') ";

                SqlCommand cmd = new SqlCommand(insert, sqlc);
                cmd.ExecuteNonQuery();
            }

            sqlc.Close();

            //ScriptManager.RegisterStartupScript(this, this.GetType(), "redirect", "finalizar('Total de ofertas cadastrado com sucesso.'); window.location='" + Request.ApplicationPath + "lancarResidencial.aspx';", true);
        }
    }
}
